home *** CD-ROM | disk | FTP | other *** search
/ Xenosoft 2 / Xenosoft 2 (Game collection)(1994).iso / bioforge / script / damage.scp < prev    next >
Text File  |  1994-11-30  |  8KB  |  268 lines

  1. // HERE IS A QUICK CATALOG OF THE POSSIBLE WOUNDS THAT LEX CAN
  2. // HAVE APPLIED TO HIM.
  3. //
  4. //  LEX PICTURE  (DECALS PLACED OVER TEXTURE)      
  5. //   LEX0PIC.FLC = PICTURE
  6. //   (ORIGINAL TXM MUST BE REDRAWN BEFORE DECAL UNLESS NOTED - (BLOOD AND FISTS)
  7. //   (# IN DECAL REFERS TO DAMAGE LEVEL - 1 BEING LEAST)
  8. //   TEXTURE           TXM NAME   FRAME #   DECAL
  9. //
  10. //   ANY               --         1     GENERIC BLOOD   (NO REDRAW OF ORIG TXM) (REPEAT W/ RANDOM PLACEMENT)
  11. //   HAND RIGHT RIGHT  MDHNRR1    2     FIST   (REPLACE ORIG TXM) (COMBAT ONLY)
  12. //   HAND RIGHT FRONT  MDHNRF1    3     FIST   (REPLACE ORIG TXM) (COMBAT ONLY) 
  13. //   HAND LEFT LEFT    MDHNLL1    4     FIST   (REPLACE ORIG TXM) (COMBAT ONLY) 
  14. //   HAND LEFT FRONT   MDHNLF3    5     FIST   (REPLACE ORIG TXM) (COMBAT ONLY) 
  15. //   HEAD FRONT        MDH1F      6     (16) BLINK   (DURATION = SHORT)
  16. //   HEAD FRONT        MDH1F      7     (17) GROWL   (DURATION = SHORT) 
  17. //   HEAD FRONT        MDH1F      8     BOB A
  18. //   HEAD FRONT        MDH1F      9     BOB B
  19. //   HEAD FRONT        MDH1F      10    BOB C
  20. //   HEAD FRONT        MDH1F      11    (1)  DAM HEAD 1
  21. //   HEAD FRONT        MDH1F      12    (17) DAM HEAD GROWL   (DURATION = MED) 
  22. //   HEAD FRONT        MDH1F      13    (18) DAM HEAD GRIMACE    (DURATION = SHORT) 
  23. //   HEAD FRONT        MDH1F      14    DAM HEAD 2  (AT DEATH ONLY)
  24. //   TORSO FRONT       MDTORSF    15    (2)  DAM TORSO FRONT 1
  25. //   TORSO FRONT       MDTORSF    16    (3)  DAM TORSO FRONT 2
  26. //   TORSO FRONT       MDTORSF    17    (4)  DAM TORSO FRONT 3
  27. //   TORSO BACK        MDTB3      18    (5)  DAM TORSO BACK 1
  28. //   TORSO BACK        MDTB3      19    (6)  DAM TORSO BACK 2
  29. //   ARM LEFT FRONT    MDALF1     20    (7)  DAM ARM LEFT FRONT   (MUST BE APPLIED IN COMBO W/ NEXT DECAL)
  30.  
  31. // THIS ONE GOT REPLACED WHEN THE PIMM CAME ON LINE. -KLD
  32. //   ARM LEFT LEFT     MDALL1     21         DAM ARM LEFT LEFT     -
  33.  
  34. //   ARM RIGHT FRONT   MDARF1     22    (8)  DAM ARM RIGHT FRONT   (MUST BE APPLIED IN COMBO W/ NEXT DECAL)
  35. //   ARM RIGHT RIGHT   MDARR1     23         DAM ARM RIGHT RIGHT    -
  36. //   LEG LEFT FRONT    MDLGLF     24    (9)  DAM LEG LEFT FRONT   (MUST BE APPLIED IN COMBO W/ NEXT 2 DECALS)
  37. //   LEG LEFT LEFT     MDLGLL     25         DAM LEG LEFT LEFT     -
  38. //   LEG LEFT RIGHT    MDLEGLR    26         DAM LEG LEFT RIGHT    -
  39. //   LEG RIGHT FRONT   MDLGRF     27    (10) DAM LEG RIGHT FRONT    (MUST BE APPLIED IN COMBO W/ 1 OF NEXT 5 DECALS)
  40. //   LEG RIGHT RIGHT   MDLGRR     28         DAM LEG RIGHT RIGHT 1   -
  41.  
  42. //   LEG RIGHT RIGHT   MDLGRR     29    DAM SPARKS LEG RIGHT RIGHT 2 A  (DURATION = SHORT) (RANDOM SWAP A,B,C,D)      
  43. //   LEG RIGHT RIGHT   MDLGRR     30    DAM SPARKS LEG RIGHT RIGHT 2 B  (DURATION = SHORT) (RANDOM SWAP A,B,C,D)   
  44. //   LEG RIGHT RIGHT   MDLGRR     31    DAM SPARKS LEG RIGHT RIGHT 2 C  (DURATION = SHORT) (RANDOM SWAP A,B,C,D)
  45. //   LEG RIGHT RIGHT   MDLGRR     32    DAM SPARKS LEG RIGHT RIGHT 2 D  (DURATION = SHORT) (RANDOM SWAP A,B,C,D)    
  46.  
  47. // HERE IS HOW LEX'S DAMAGE FLAGS BREAK DOWN:
  48. // 1-10         DAMAGE TO THE BODY
  49. // 16           WHETHER HIS EYES ARE CLOSED OR NOT (BLINKING)
  50. // 17           HE IS GROWLING
  51. // 18           HE IS GRIMACING
  52.  
  53.  
  54. { LEXMANAGEHEAD _DMG
  55.  
  56.     .ÇéÇä           = ~ÇÇ 
  57.  
  58.     // CLEAR THE HEAD FOR WRITING...
  59.     w     CURFIG RESTORE MDH1F
  60.  
  61.     // WHAT HIS HEAD LOOKS LIKE WHEN HE IS DEAD, SO OVERRIDE EVERYTHING
  62.     // ELSE WITH IT:
  63.     I ( .ÇéÇÇ        < 1 ) THEN
  64.         {
  65.         w     CURFIG DRAWONLY MDH1F PICTURE 14
  66.         }
  67.     E   
  68.         {
  69.         // THIS IS HIS HEAD WHEN HE HAS BEEN HARMED...
  70.         I ( @ÇÅ     ( ~ÇÇ , 1 ) ) THEN
  71.             {
  72.             w     CURFIG DRAW MDH1F PICTURE 11
  73.             I ( @ÇÅ     ( ~ÇÇ , 17 ) ) THEN
  74.                 w     CURFIG DRAW MDH1F PICTURE 12      // DAM+GROWL
  75.             I ( @ÇÅ     ( ~ÇÇ , 18 ) ) THEN
  76.                 w     CURFIG DRAW MDH1F PICTURE 13      // DAM+GRIMACE
  77.             }
  78.         E   
  79.             {
  80.             I ( @ÇÅ     ( ~ÇÇ , 17 ) || @ÇÅ     ( ~ÇÇ , 18 ) ) THEN
  81.                 w     CURFIG DRAW MDH1F PICTURE 7       // GROWL
  82.             I ( @ÇÅ     ( ~ÇÇ , 16 ) ) THEN
  83.                 w     CURFIG DRAW MDH1F PICTURE 6       // BLINK
  84.             
  85.             }
  86.     
  87.         }
  88. }
  89.  
  90.  
  91.  
  92. // IF YOU CALL LEXHEAD AND YOU ARE SETTING A FLAG THAT IS ALREADY
  93. // SET, YOU'LL GET A ZERO BACK AND LEXMANAGEHEAD WILL NEVER GET
  94. // CALLED. -KLD
  95.  
  96. { LEXHEAD _WHICH_FLAG _NEW_VALUE
  97.  
  98.     P        ~Çé 
  99.     
  100.     @Ç¢               LEX
  101.     ~Çé  = .ÇéÇä          
  102.  
  103.     I ( ~Çü        = 0 ) THEN
  104.         b        ( ~Çé , ~ÇÇ         )
  105.     E   
  106.         {
  107.         I ( @ÇÅ     ( ~Çé , ~ÇÇ         ) ) THEN
  108.             é      0
  109.  
  110.         a      ( ~Çé , ~ÇÇ         )
  111.         }
  112.  
  113.     @Ç¥   LEXMANAGEHEAD ~Çé 
  114.     é      1
  115. }
  116.  
  117. { BLINK
  118.     I ( @Ç¥   LEXHEAD( 16, 1 ) ) THEN
  119.         {
  120.         W    4
  121.         @Ç¥   LEXHEAD 16 0
  122.         }
  123. }
  124.  
  125. { GROWL _DURATION
  126.     I ( @Ç¥   LEXHEAD( 17, 1 ) ) THEN
  127.         {
  128.         W    ~ÇÇ       SECONDS
  129.         @Ç¥   LEXHEAD 17 0
  130.         }
  131. }
  132.  
  133. // YOU ALWAYS GRIMACE FOR A CERTAIN NUMBER OF SECONDS.
  134. { GRIMACE _DURATION
  135.  
  136.     I ( @Ç¥   LEXHEAD( 18, 1 ) ) THEN
  137.         {
  138.         W    ~ÇÇ       SECONDS
  139.         @Ç¥   LEXHEAD 18 0
  140.         }
  141. }
  142.  
  143.  
  144.  
  145. { LEX_WOUNDS
  146.     P        ~ÇÇ           
  147.     P        ~Çü     
  148.     P        ~Çé     
  149.     P        ~Çâ   
  150.     P        ~Çä 
  151.     P        ~Çà  
  152.  
  153.     P        ~Çå         
  154.     P        ~Çç        
  155.  
  156.     I  @Ç⌐       ( LEXMIR ) THEN
  157.         é     
  158.     E   
  159.  
  160.     I  @Ç⌐       ( HARD) THEN @Ç¥  ( HARD_WOUNDS)
  161.     E   
  162.         {
  163.         ~Çä  = .ÇéÇä          
  164.  
  165.         ~ÇÇ            = @Ç»       ( ~Çä , 1, 10 );
  166.         
  167.         ~Çü      = .ÇéÇÇ        / 10
  168.         ~Çü      = 10 - ~Çü     
  169.         I ( ~Çü      < 0 ) THEN ~Çü      = 0
  170.         I ( ~Çü      > 10 ) THEN ~Çü      = 10
  171.  
  172.         :TOP
  173.         ~Çé      = 0
  174.  
  175.         // HEY, HE HAS MORE DAMAGE THAN WE'RE SHOWING. GIVE HIM MORE!
  176.         I ( ~ÇÇ            < ~Çü      ) THEN
  177.             {
  178.             ~Çé      = 1
  179.  
  180.             :ADDATWHATPOINT
  181.             ~Çâ    = @Çà    ( 1, 10 )
  182.             I ( @ÇÅ     ( ~Çä , ~Çâ    ) = 1 ) THEN J    #Çç           
  183.  
  184.             a      ( ~Çä , ~Çâ    )
  185.             ~ÇÇ            += 1
  186.             }
  187.  
  188.         // HEY, TOO MUCH DAMAGE IS SHOWING. REMOVE SOME!
  189.         I ( ~ÇÇ            > ~Çü     ) THEN
  190.             {
  191.             ~Çé      = 1
  192.  
  193.             :REMOVEATWHATPOINT
  194.             ~Çâ    = @Çà    ( 1, 10 )
  195.             I ( @ÇÅ     ( ~Çä , ~Çâ    ) = 0 ) THEN J    #Çê              
  196.  
  197.             b        ( ~Çä , ~Çâ    )
  198.             ~ÇÇ            -= 1
  199.             }
  200.  
  201.         I ( ~Çé      = 1 ) THEN J    #Çå
  202.  
  203.         // THIS IS THE SECTION THAT MANAGES THE ACT OF DRAWING
  204.         // STUFF ON LEX.
  205.         w     CURFIG RESTORE ALL
  206.         I ( @ǃ             ) THEN
  207.             {
  208.             w     CURFIG CLEAR MDHNRR1 PICTURE 2
  209.                    w     CURFIG CLEAR MDHNRF1 PICTURE 3
  210.                    w     CURFIG CLEAR MDHNLL1 PICTURE 4
  211.                    w     CURFIG CLEAR MDHNLF3 PICTURE 5
  212.             }
  213.             
  214.         @Ç¥   LEXMANAGEHEAD ~Çä 
  215.  
  216.         ~Çå          = 14
  217.         I ( @ÇÅ     ( ~Çä , 2 ) ) THEN ~Çå          += 1
  218.         I ( @ÇÅ     ( ~Çä , 3 ) ) THEN ~Çå          += 1
  219.         I ( @ÇÅ     ( ~Çä , 4 ) ) THEN ~Çå          += 1
  220.  
  221.         I ( ~Çå          > 14 ) THEN
  222.             w     CURFIG DRAWONLY MDTORSF PICTURE ~Çå         
  223.  
  224.         ~Çç         = 17
  225.         I ( @ÇÅ     ( ~Çä , 5 ) ) THEN ~Çç         += 1
  226.         I ( @ÇÅ     ( ~Çä , 6 ) ) THEN ~Çç         += 1
  227.  
  228.         I ( ~Çç         > 17 ) THEN
  229.             w     CURFIG DRAWONLY MDTB3 PICTURE ~Çç        
  230.  
  231.  
  232.         I ( @ÇÅ     ( ~Çä , 7 ) ) THEN
  233.             {
  234.             // BOTH TEXTURES MUST CHANGE!
  235.             w     CURFIG DRAWONLY MDALF1 PICTURE 20
  236.  
  237.             // NOW THE PIMM USES THIS TEXTURE.  ITS NAME CHANGED,
  238.             // SO I CAN'T DAMAGE IT ANYMORE. -KLD
  239.             // APPLY CURFIG DRAWONLY MDALL1 PICTURE 21
  240.             }
  241.  
  242.         I ( @ÇÅ     ( ~Çä , 8 ) ) THEN
  243.             {
  244.             w     CURFIG DRAWONLY MDARF1 PICTURE 22
  245.             w     CURFIG DRAWONLY MDARR1 PICTURE 23
  246.             }
  247.  
  248.         I ( @ÇÅ     ( ~Çä , 9 ) ) THEN
  249.             {
  250.             w     CURFIG DRAWONLY MDLGLF PICTURE 24
  251.             w     CURFIG DRAWONLY MDLGLL PICTURE 25
  252.             w     CURFIG DRAWONLY MDLEGLR PICTURE 26
  253.             }
  254.  
  255.         I ( @ÇÅ     ( ~Çä , 10 ) ) THEN
  256.             {
  257.             w     CURFIG DRAWONLY MDLGRF PICTURE 27
  258.             w     CURFIG DRAWONLY MDLGRR PICTURE 28
  259.             }
  260.  
  261.     }
  262.  
  263. }
  264.  
  265.               
  266.  
  267. //$ 26 - version number
  268.